how_tofandomcom-20200214-history
Guide to free kernels
We try to list here the kernels or operating systems that are free. If the kernel is the same as the operating system we list both. Presentation: * Ordered by categories. * A description near each kernel. The description should contain 3 domains: ** How the kernel is related to other kernels historically ** How the kernel is related to other kernels technically. ** If the number is not huge, please list the distributions for each kernel. ** Optional: when applicable, if the kernel is build to run on top of a microkernel, and which microkernel. Description If you are just new to free operating systems, then the best solution for you is: * If you only used Windows before, try a Linux-based distribution. You can try to use WINE to run window software, but don't try ReactOS because it is not ready. * If you used DOS, UNIX, BeOS, etc., try one of the systems that are clones of the system you are used to. POSIX (UNIX-like) In order to make UNIX-like systems more compatible with each other, there is the POSIX standard. * Linux (a trade mark of Linus Torvalds) ** the Linux kernel. *** The most popular free kernel today. It was developed by Linus Torvalds. *** Technically, it supports the most hardware, and is the most advanced regarding the number of implemented features. *** There is only one operating system that works with Linux, and that is the GNU operating system with a few non-GNU programs like the X server. Since GNU does not try to build a distribution ready to use, there are many distributions using Linux. All of them use the GNU tools for most of the rest of the system and some people call them GNU/Linux because of that. *** This kernel is able to run on top of a L4-compatible microkernel, but it is not based on a microkernel since it is monolithic. See also L4Linux. ** SELinux Security-enhanced Linux. Here is the community page. *** It is a modification to the Linux kernel. *** Enforces mandatory access control policies that confine user programs and system servers to the minimum amount of privilege they require to do their jobs. It also focuses on the highest security level required in some cases. *** It is only a kernel, but some distributions work on it: RedHat/Fedora, Debian/Ubuntu, Gentoo, SuSE, Slackware. ** openMosix *** It is a Linux kernel extension. *** For single-system image clustering which turns a network of ordinary computers into a supercomputer. *** There are about 12 distributions based on this extension to Linux. * The original BSD (Berkeley Unix) is not maintained any more. There are now 4 projects derived from it: FreeBSD, OpenBSD and NetBSD are close with each other, and Solaris that was long time proprietary, and recently it was released under a license more restrictive than the other BSDs but Open Source however. ** FreeBSD *** It is an old fork from the original BSD. *** The goal is to create a system more easy to install than the other BSDs. *** It is a kernel and a distribution. Some other distributions exist based on the kernel: ClosedBSD, PicoBSD, TrustedBSD ** NetBSD *** It is an old fork from the original BSD. *** The goal is to create a system where the code is as clean as possible and can run on as many platforms as possible. *** It is a kernel and a distribution at the same time. Recently, the Debian project works on a distribution based on this kernel. ** OpenBSD. *** It was forked long time ago from the NetBSD kernel. *** The goal is to make a BSD system that is as secure as possible. *** It is a kernel and a distribution at the same time. ** OpenSolaris *** It was released under an Open Source license in 2005 from the old Solaris. Solaris was proprietary forked from SunOS. SunOS was proprietary forked from the original BSD. The original BSD was Open Source and Free Software but with no copyleft protection. *** As of today, it has huge differences with other BSD systems. *** It is delivered as a whole: kernel and distribution. ** The DragonFly BSD Project *** Forked in 2004-2005 from the FreeBSD project. *** The official original goals are to create properly specified APIs and better upgrade on software, as inspired by Debian and Linux. *** It is a kernel and a distribution. ** Darwin (the base of Apple's Mac OS X) *** It is a fork from the original BSD code but based on the Mach microkernel. *** It is actually the base of Mac OS X, and it is not only compatible but also identical to it. Mac OS X will add some extension to the operating system that are not free, and so Darwin-based free distributions are able to run/compile most Apple applications but not all of them. *** There are some distributions based on Darwin: GNU Darwin and OpenDarwin. * GNU Hurd. ** It is the official kernel from the GNU project. It started at the same time as the Linux kernel but it is far more complex by design, and does not have as much support. ** For now, Debian is working on making a distribution based on Hurd. Less work is done also by Gentoo and maybe not really actively by Cosmoe and Bee. ** It is using a microkernel by design. For now it runs on GNU Mach microkernel. It was recently ported to L4 and L4 will be the default microkernel in the future. See various L4 implementations. POSIX (not UNIX-like) When writing programs, a system that is POSIX compliant allow programmers to compile any UNIX-like (...POSIX) application on the new system. The new system does not need to be UNIX-like. * Syllable ** It is a fork of AtheOS from 2002. AtheOS is NOT a clone of BeOS but a new system. ** It is focused on ease of use for the desktop user. It is 99% POSIX compliant. ** It is at the same time a kernel and a distribution. Windows - like Microsoft Window is a popular general-purpose proprietary operating system. One of the positive things about it is the highly availability of drivers from hardware manufacturers but also the high number of (mostly proprietary) applications. Contrary to most other proprietary operating systems, there still are new releases planned, but the delay between releases is growing (it is about 6 years or more right now for the desktop). * ReactOS ** The kernel build from scratch, and the system is using the WINE libraries. ** The goal is to create a free operating system capable to run binary and source-compiled Window applications, and at the same time try to fix many of the bugs and security holes the proprietary system is known to have. Not yet finished. ** It is a kernel and a distribution at the same time. * WINE = Wine Is Not an Emulator ** Builds from scratch, and not a kernel, just the libraries allowing Windows programs to run on top of other operation systems, like Linux-based, ReactOS-based, etc... ** Not finished but you can run most of your games and applications already on it if you are using a Linux, *BSD, Solaris or many other kernels. ** It implements only the external API, and is not a kernel. DOS - like DOS was an old proprietary operating system, not maintained any more since long time. * FreeDOS ** FreeDOS has major improvements from all other DOS-es, including the proprietary ** It is stable and compatible binary and source with the old DOS. It has many improvements over the old MS DOS including full memory access. ** It is a kernel and a distribution at the same time. It can also be installed on top of other operating systems. Macintosh - like Apple has developed a general-purpose operating system, the Mac OS X.Well apple uses Vanilla Kernel and it can easily extracted using 3rd party software called Pacifist Pratik N Borkar has shows us how to extract it easily. Apple Kernel Name OS X 10.6.0 to 10.9.5 mach_kernel OS X 10.10.0 to 10.11.2 kernel Apple Kernel Location On OS X 10.6.0-10.6.8 the location is the Root directory of Installer or the DMG.On OS X 10.7.0 to 10.7.5 and OS X 10.8.0 to 10.8.5 the kernel is located in InstallESD.dmg.but after Release of OS X Mavericks developer preview the kernel location was change OS X 10.9 DP 1 to 10.9.5 the kernel is located in InstallESD.dmg/basesystembinaries.pkg/mach_kernel '''but after OS X Yosemite the kernel location actually changes it reside in '''InstallESD.dmg/Essential.pkg/System/Library/Kernels/Kernel Please read POSIX Unix-like section: the BSD-based Darwin kernel. BeOS-like BeOS was a proprietary system: the company closed and sold the code and no new release will follow. It was an operating system based on multimedia and intuitive desktop-centered usage. * Haiku ** It is the new name of the old OpenBeOS. Not a fork, just a new name and web site. ** Haiku R1 will be binary and source compatible with BeOS R5. ** It is both a kernel and a system, but not yet ready. * cosmoe ** Cosmoe is a new user interface that runs on top of the Linux operating system (and soon others). ** It is not complete, but it is possible to compile most of BeOS applications on it. ** It is not a real kernel since it uses other operating systems to run on top. AmigaOS - like AmigeOS is a proprietary operating system. It was popular in research areas (to verify). The system is not maintained very actively any more even if it is possible that a new release is made. The original proprietary system only runs on specific hardware. * AROS ** AROS - Build from scratch ** It is a portable and free desktop operating system aiming at being compatible with AmigaOS 3.1, while improving on it in many areas. ** It is a kernel and a distribution at the same time. * UAE ** Builds from scratch to emulate AmigaOS ** Just an emulator ** It is not a real kernel, only an emulator that runs on top of other operating systems. Related Howtos * Live CDs based on a free kernel (What are the main) * Linux (Where can i find information about) * How To [http://www.hackintoshmumbai.com/how-to-extract-kernel-from-pacifist/ Extract Apple Kernel from Pacifist ] Excluded * MenuetOS ** Hobby operating system. It is however stable and working and the fastest kernel/operating system on earth. ** 32 bit x86 assembly programming. It is possible to use GCC in order to compile programs (but there is no POSIX compliance). It is recommended to write applications in assembler that run much faster than applications compiled. ** Little kernel and operating system that enter on a single floppy disk. You must build your distribution (to verify). ** REASON: for now it has limited practical usage. * NewOS - because it is not usable as distribution. Work in progress. * eCos - because it is embedded, and there is no distribution for normal computers. Comments * You can compare various free operating systems.